51 research outputs found
Fragments of ML Decidable by Nested Data Class Memory Automata
The call-by-value language RML may be viewed as a canonical restriction of
Standard ML to ground-type references, augmented by a "bad variable" construct
in the sense of Reynolds. We consider the fragment of (finitary) RML terms of
order at most 1 with free variables of order at most 2, and identify two
subfragments of this for which we show observational equivalence to be
decidable. The first subfragment consists of those terms in which the
P-pointers in the game semantic representation are determined by the underlying
sequence of moves. The second subfragment consists of terms in which the
O-pointers of moves corresponding to free variables in the game semantic
representation are determined by the underlying moves. These results are shown
using a reduction to a form of automata over data words in which the data
values have a tree-structure, reflecting the tree-structure of the threads in
the game semantic plays. In addition we show that observational equivalence is
undecidable at every third- or higher-order type, every second-order type which
takes at least two first-order arguments, and every second-order type (of arity
greater than one) that has a first-order argument which is not the final
argument
Initiality for Typed Syntax and Semantics
We give an algebraic characterization of the syntax and semantics of a class
of simply-typed languages, such as the language PCF: we characterize
simply-typed binding syntax equipped with reduction rules via a universal
property, namely as the initial object of some category. For this purpose, we
employ techniques developed in two previous works: in [2], we model syntactic
translations between languages over different sets of types as initial
morphisms in a category of models. In [1], we characterize untyped syntax with
reduction rules as initial object in a category of models. In the present work,
we show that those techniques are modular enough to be combined: we thus
characterize simply-typed syntax with reduction rules as initial object in a
category. The universal property yields an operator which allows to specify
translations - that are semantically faithful by construction - between
languages over possibly different sets of types.
We specify a language by a 2-signature, that is, a signature on two levels:
the syntactic level specifies the types and terms of the language, and
associates a type to each term. The semantic level specifies, through
inequations, reduction rules on the terms of the language. To any given
2-signature we associate a category of models. We prove that this category has
an initial object, which integrates the types and terms freely generated by the
2-signature, and the reduction relation on those terms generated by the given
inequations. We call this object the (programming) language generated by the
2-signature.
[1] Ahrens, B.: Modules over relative monads for syntax and semantics (2011),
arXiv:1107.5252, to be published in Math. Struct. in Comp. Science
[2] Ahrens, B.: Extended Initiality for Typed Abstract Syntax. Logical
Methods in Computer Science 8(2), 1-35 (2012)Comment: presented at WoLLIC 2012, 15 page
A semantical approach to equilibria and rationality
Game theoretic equilibria are mathematical expressions of rationality.
Rational agents are used to model not only humans and their software
representatives, but also organisms, populations, species and genes,
interacting with each other and with the environment. Rational behaviors are
achieved not only through conscious reasoning, but also through spontaneous
stabilization at equilibrium points.
Formal theories of rationality are usually guided by informal intuitions,
which are acquired by observing some concrete economic, biological, or network
processes. Treating such processes as instances of computation, we reconstruct
and refine some basic notions of equilibrium and rationality from the some
basic structures of computation.
It is, of course, well known that equilibria arise as fixed points; the point
is that semantics of computation of fixed points seems to be providing novel
methods, algebraic and coalgebraic, for reasoning about them.Comment: 18 pages; Proceedings of CALCO 200
The Compiler Forest
Abstract. We address the problem of writing compilers targeting complex execution environments, such as computer clusters composed of machines with multi-core CPUs. To that end we introduce partial compilers. These compilers can pass sub-programs to several child (partial) compilers, combining the code generated by their children to generate the final target code. We define a set of high-level polymorphic operations manipulating both compilers and partial compilers as first-class values. These mechanisms provide a software architecture for modular compiler construction. This allows the building of a forest of compilers, providing a structured treatment of multistage compilers.
Process types as a descriptive tool for interaction
We demonstrate a tight relationship between linearly typed π-calculi and typed λ-calculi by giving a type-preserving translation from the call-by-value λµ-calculus into a typed π-calculus. The λµ-calculus has a particularly simple representation as typed mobile processes. The target calculus is a simple variant of the linear π-calculus. We establish full abstraction up to maximally consistent observational congruences in source and target calculi using techniques from games semantics and process calculi
Computational Interpretations of Classical Linear Logic
Abstract. We survey several computational interpretations of classical linear logic based on two-player one-move games. The moves of the games are higher-order functionals in the language of finite types. All interpretations discussed treat the exponential-free fragment of linear logic in a common way. They only differ in how much advantage one of the players has in the exponentials games. We dis-cuss how the several choices for the interpretation of the modalities correspond to various well-known functional interpretations of intuitionistic logic, including Gödel’s Dialectica interpretation and Kreisel’s modified realizability.
Isomorphisms of types in the presence of higher-order references (extended version)
We investigate the problem of type isomorphisms in the presence of
higher-order references. We first introduce a finitary programming language
with sum types and higher-order references, for which we build a fully abstract
games model following the work of Abramsky, Honda and McCusker. Solving an open
problem by Laurent, we show that two finitely branching arenas are isomorphic
if and only if they are geometrically the same, up to renaming of moves
(Laurent's forest isomorphism). We deduce from this an equational theory
characterizing isomorphisms of types in our language. We show however that
Laurent's conjecture does not hold on infinitely branching arenas, yielding new
non-trivial type isomorphisms in a variant of our language with natural
numbers
- …